{\rtf1\ansi\ansicpg1252\cocoartf949\cocoasubrtf430
{\fonttbl\f0\fnil\fcharset0 Monaco;}
{\colortbl;\red255\green255\blue255;\red0\green116\blue0;\red170\green13\blue145;\red63\green110\blue116;
}
\deftab480
\pard\tx480\pardeftab480\ql\qnatural\pardirnatural

\f0\fs20 \cf2 \CocoaLigature0 //\cf0 \
\cf2 //  M\'e9mo\cf0 \
\cf2 //  RaiseMan\cf0 \
\cf2 //\cf0 \
\cf2 //  Created by Pierre Duch\'eane on 02/01/09.\cf0 \
\cf2 //  Copyright IFSIC 2009 . All rights reserved.\cf0 \
\cf2 //\cf0 \
\
Partie ArrayController chapitre 8\
C'est IB qui fait tout le boulot. Comme class on a juste Person et le document.\
Dans IB on va ajouter un ArrayController qui prendra des objets de type Person comme \'e9l\'e9ment (Attributes->Class Name:Person)\
Du coup quand on va lier le boutton "Ajouter nouvelle Personne" \'e0 la prise "add:" du ArrayController il va savoir que c'est un objet Person qu'il faut ajouter.\
Par contre ensuite on a deux colonnes. Comme le savoir dans laquelle place personName et expectedRaise? Il faut ici r\'e9gler la valeur de colonnes (Table Column Binding->Value:binds to ArrayController + ModelKeyPath=personName.\
idem pour le expectedRaise.\
\
Partie UndoManager chapitre 9\
Lorsque l'utilisateur fait une action, une m\'e9thode y est associ\'e9. Par exemple clique sur "ajout nouvelle personne" -> le ArrayController appelle:\
- (\cf3 void\cf0 )insertObject:(\cf4 Person\cf0  *)p inEmployeesAtIndex:(\cf3 int\cf0 )index;\
Du coup nous on en profite pour y ins\'e9rer la gestion du undoManager.\
\
C'est plus compliqu\'e9 pour le undo des modifications. Il faut "\'eatre au courant" qu'il y a eu modif d'o\'f9 l'observer.\
}